Industrial automation personalization engine

ABSTRACT

Various embodiments of the present technology provide an integrated platform that provides personalized experiences for users of an integrated platform during various phases of an industrial automation project lifecycle. In accordance with various embodiments, the integrated platform can create personalized experiences for different users based on one or more assigned roles. The roles can include company roles, industry roles, job roles, location-based roles, personalized roles, and the like. For example, some company that only purchases certain brands of components for an industrial automation project can indicate that preference. During interactions with the integrated platform, any user associated with that company (e.g., via the company role) will only be presented with those preferences. As another example, generic requests received via one interaction channel can be analyzed and personalized, specific responses can be generated based on activity within other interaction channels.

RELATED APPLICATIONS

This application is a continuation of and claims the benefit of andpriority to U.S. patent application Ser. No. 16/145,619 filed Sep. 28,2018 entitled “INDUSTRIAL AUTOMATION PERSONALIZATION ENGINE,” which ishereby incorporated by reference in its entirety for all purposes.

TECHNICAL FIELD

Various embodiments of the present technology generally relate toindustrial automation system design. More specifically, some embodimentsof the present technology relate to industrial automationpersonalization engines.

BACKGROUND

The rapid evolution in industrial automation systems has led to manyfactory environments that are partially or completely automated. Suchautomated systems allow for improved output with minimal input fromhumans. For example, automated manufacturing processes are common inautomotive industry, chemical industry, food and beverage industry,mining and metal industries, and others. The industrial automationsystems are often custom solutions designed to solve unique needs withineach industry and for each company. Moreover, these industrialautomation systems are more complex than ever and require tighterintegration between other devices or systems on the plant floor and therest of the enterprise. This integration requires a secure networkinfrastructure, smart devices for efficient data collection, and theability to turn data into actionable information.

The expanding availability of options for motors, motor controllers,sensors, switches, relays, interface options, and various othercomponents make designing, building, and maintaining these industrialautomation systems more difficult than even. New parts are constantlybeing introduced, while some old parts are redesigned and replaced withimproved versions or phase out of production. Moreover, some parts arecompatible while other parts are not. As such, developing initial costestimates, defining project scope, budget, total cost of ownership,implementation timelines, and risk assessments can all be challenging.Moreover, ensuring compliance with various safety and governmentalstandards that can vary across industries is another challenge indesigning complex industrial automation solutions.

SUMMARY

Various embodiments of the present technology generally relate toindustrial automation system design. More specifically, some embodimentsof the present technology relate to industrial automationpersonalization engines. In some embodiments, an integrated platform canbe configured to provide users with customized personalizations that aredifferent for each user. The integrated platform can include aprocessor, one or more tools configured to allow the user to interactwith the integrated platform during lifecycle phases of an industrialautomation project. The integrated platform may also include anidentification module, under control of the processor, to identify andvalidate a user and one or more roles of the user within an industrialautomation project design. The one or more user roles may include, butare not limited to, a company role identifying a role within anorganization, an industry role identifying industries the user isassociated with, and individual roles identifying specific activity ofthe user. The personalization engine can personalize a user experiencewithin the integrated platform based on the one or more roles of theuser.

In some embodiments, the personalization engine can monitor one or moreinteraction channels within the integrated platform and generatespersonalized responses in a first interaction channel based on activitywithin a second interaction channel. The first interaction channel maybe a voice assistant and the second interaction channel be the one ormore tools. The personalization engine can also personalize activitywithin the integrated platform based on the associated company role. Forexample, a company may specify specific components or brands preferredby the company (e.g., to achieve volume discounts, based on inventorylevels, etc.) and the personalization engine will only present thosecomponent options to the user during searches, designs, or repairs. Theone or more roles of the user can be generated or updated based on areview from a machine learning or artificial intelligence engine toautomatically assess the role of the user. In some embodiments, themachine learning or artificial intelligence engine can also review useractivity via one or more interaction channels, company human resourcedata, cross platform files from other users in the same industry,historical sales records, and maintenance records. As a result, a newperson using the integrated platform can receive the companypersonalizations to help get them up to speed or ensure compliance withcompany policies. Moreover, the personalization engine can take multipledata points (e.g., browser history, current activity, articles read bythe user, etc.) and make an educated guess as to what the user wants toknow based on a derived user profile.

Embodiments of the present invention also include computer-readablestorage media containing sets of instructions to cause one or moreprocessors to perform the methods, variations of the methods, and otheroperations described herein.

While multiple embodiments are disclosed, still other embodiments of thepresent invention will become apparent to those skilled in the art fromthe following detailed description, which shows and describesillustrative embodiments of the invention. As will be realized, theinvention is capable of modifications in various aspects, all withoutdeparting from the scope of the present invention. Accordingly, thedrawings and detailed description are to be regarded as illustrative innature and not restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present technology will be described and explainedthrough the use of the accompanying drawings in which:

FIG. 1 illustrates an example of an integrated environment in which someembodiments of the present technology may be utilized;

FIG. 2 illustrates data flow between various components of an integratedplatform that may be used in one or more embodiments of the presenttechnology;

FIG. 3 illustrates a set of components that may be used within anintegrated platform according to one or more embodiments of the presenttechnology;

FIG. 4 is a flowchart illustrating a set of operations for managing acustomized user experience according to one or more embodiments of thepresent technology;

FIG. 5 is a flowchart illustrating a set of operations for operating forgenerating custom recommendations and user experiences within anintegrated platform in accordance with some embodiments of the presenttechnology;

FIG. 6 is flowchart illustrating a set of operations for automaticallygenerating a bill of materials in accordance with one or moreembodiments of the present technology;

FIG. 7 is a flowchart illustrating a set of operations for userpersonalization in accordance with various embodiments of the presenttechnology;

FIG. 8 illustrates an example of an interface for administrating userroles within an integrated platform according to some embodiments of thepresent technology;

FIG. 9 illustrates an example of an interface for managing user roleswithin an integrated platform according to some embodiments of thepresent technology;

FIG. 10 is a sequence diagram illustrating an example of the data flowbetween various components of an integrated platform according tovarious embodiments of the present technology; and

FIG. 11 is an example of a computer system associated with an industrialautomation system.

The drawings have not necessarily been drawn to scale. Similarly, somecomponents and/or operations may be separated into different blocks orcombined into a single block for the purposes of discussion of some ofthe embodiments of the present technology. Moreover, while thetechnology is amenable to various modifications and alternative forms,specific embodiments have been shown by way of example in the drawingsand are described in detail below. The intention, however, is not tolimit the technology to the particular embodiments described. On thecontrary, the technology is intended to cover all modifications,equivalents, and alternatives falling within the scope of the technologyas defined by the appended claims.

DETAILED DESCRIPTION

Various embodiments of the present technology generally relate toindustrial automation system design. More specifically, some embodimentsof the present technology relate to industrial automationpersonalization engines. Creating complex industrial automation systemsrequires a number of individuals in differing roles performing differentactivities. At the highest level the roles of these individuals can bedivided into a presale phase and a post-sale phase. During the presalephase members of the sales team (e.g., system integrators anddistributors) are tasked with understanding the customer's needs,initially designing a solution, and generating one or more estimates.Other tasks can include, procurement, ensure design will work,generating quotes and proposals, and the like.

Given the complexity of many of the industrial automation machinedesigns, an initial quote providing a rough order of magnitude is oftenprepared first. If the customer is comfortable with the rough order ofmagnitude of the quote, then more time is spent refining the project andquote. Depending on the complexity of the project, these steps may takeseveral days to several months. There may often be many layers of reviewby different individuals before a project design is finalized. Keepingthe reviewers on track and ensuring needed updates to the design aretimely made can be difficult. Ultimately, once the quote is ultimatelyaccepted (possibly after some modifications) by the customer, the nextstep is to build and deliver the industrial automation machine.

Building and delivering the industrial automation machine is part of thepost-sale phase can include development work around delivering themachine. In many cases, control engineers write programs that willcontrol the industrial automation system (e.g., read the inputs, controlthe outputs, etc.), design and build human machine interfaces (HMI),configure devices (e.g., making sure each component has the rightfirmware and other objects), and the like. Once the machine isinstalled, eventually the customer will need support for routinemaintenance, repairs, and/or upgrades for this custom system.

Various embodiments of the present technology provide an integratedplatform that provides personalization across all of the multiplelifecycle phases of an industrial automation system. In accordance withvarious embodiments, the integrated platform can identify the user, theuser's affiliation with a company or distributor, which information theuser should have access to, and the role or roles of the user. In someembodiments, the integrated platform can take whatever is specified in apresale phase provide customized recommendations and/or personalizations(e.g., based on historical purchasing information).

Once the design is finalized, the integrated platform can allow the useror other team members to easily open up that information in acorresponding tool to address needs in the post-sale phase to allow forall device commissioning, programming, and configuration without anyimporting, exporting, or recreation of presale files. As such, anylayouts or designs can be easily opened up within the platform by userswith differing roles. Moreover, if in the post-sale phase, a controlengineer decides that a specific aspect of control system was left out,the control engineer can summon the capability of the presale phase toexpand the system. As a result, there is a seamless integration (e.g.,no user ever has to take additional steps to keep in presale records insync with the post-sale) as project activity is represented by the sameunderlying representation or basis within the integrated platform.

Moreover, once an industrial automation system is commissioned, theintegrated platform can provide guidance or recommendations on componentselection or subsystem redesigns to bring the system up to acontemporary configuration as components or standards change. Variousembodiments can use artificial intelligence to form presalerecommendations and optimized experiences based on how components areconnected and working in post-sale environments. For example, someembodiments can quickly review and analyze databases with records ofexisting configurations.

If part A is being switched out with part B pretty often once anindustrial automation machine is up and going, then the presaleexperience can be customized to recommend part B. Similarly, if there isa particular configuration for a specific application that issuccessful, then the integrated platform can streamline the upfrontspecification time by recommending the configuration. For example, if adesign is being created for a vertical form post seal machine running atparticular rate, the integrated platform can review typically specifiedand validated designs which the presale user can use this as a startingpoint as well as identifies components or configurations that maybe nowwork better for their machine. Moreover, by understanding the roles ofthe user the integrated platform can make customized personalizations.For example, if a user is part of company Y and company Y only usescertain brands of drives, then the tool will only present thoseparticular brands of drives to the user.

Once built, the lifecycle of a machine can span many years or evendecades. Over time the machine may be upgraded or modified. Thehistorical records can easily get lost or be no longer available. Thisis complicated even more by the fact that different parties are involvedin the design, building, and repair of the industrial automation system.As such, various embodiments provide an integrated platform that allowsusers from multiple companies (e.g., distributor, component provider,end user, repair technicians, etc.) to create a data ecosystem which canbe effectively and securely accessible across multiple parties. Thisdata ecosystem can be useful as an effective knowledge transfer asindividuals leave and new team members are added. Moreover, this datacan be used to create customized recommendations when the customerstarts a new project.

For example, a user can access the integrated platform. Instead of thedata being siloed by the different parties involved, the integratedplatform can provide a master data hub that federates the parties andprovides appropriate access to the data. The integrated platform canverify that the user is associated with the company (e.g., based onlocation, IP address, prior invoice numbers, verification by anadministrator, etc.). Once vetted, the system can access specific dataabout the companies purchases and goals stored within the dataecosystem. By aggregating historical purchasing data, the system canprovide customized recommendations and personalizations to the user evenif the user is new to the company and has not made any previouspurchases or design decisions. Moreover, the integrated platform canprovide an effective way for license management and transfer forsoftware sold via a distributor.

Various embodiments of the present technology provide for a wide rangeof technical effects, advantages, and/or improvements to computingsystems and components. For example, various embodiments include one ormore of the following technical effects, advantages, and/orimprovements: 1) holistic transformation of an automation project thateffectively broadens the scope of the project in a way that allows theproject files to work within an environment that treats the project as alifecycle and not just a onetime deliverable for specific phase; 2)integrated management of project lifecycle phases allowing the projectto be represented in a consistent way across multiple phases withdifferent users; 3) proactive summoning capability of what has betraditionally seen as presale capability so that these capabilities areavailable at any time during the lifecycle; 4) use of unconventional andnon-routine computer operations to contextually provide notificationsand recommendations for component (or alternative component) selectionbased on lifecycle situations, delivery situations (e.g., parts stillavailable but harder to get), performance considerations (e.g., a newswitch to increase bandwidth), and other realization factors; 5)cross-platform integration of machine learning to more efficiently scopeand surface component selection information; 6) integration ofartificial intelligence to review customer activity and form intelligentpresale and/or repair recommendations (e.g., based on user roles, howhistorical designs are connected and working in post-sale environments,etc.); 7) changing the manner in which a computing system reacts todesign and building of industrial automation machines; 8) automatic useridentification and risk assessment to provide access to criticalinformation in a personalized manner; 9) use of unconventional andnon-routine computer operations to provide customized recommendationsand personalization based on distributed knowledge and system design;10) creation of a master hub to create a dynamic data ecosystem inproviding customized recommendations and/or personalizations; 11) use ofmachine learning and artificial intelligence to generate initialinstalled base assessments of customer facilities; 12) fundamentalchange in the managing services or goods that are not being solddirectly to a consumer; and/or 13) changing the manner in which acomputing system reacts to user interactions and feedback.

In the following description, for the purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of embodiments of the present technology. It will beapparent, however, to one skilled in the art that embodiments of thepresent technology may be practiced without some of these specificdetails.

The techniques introduced here can be embodied as special-purposehardware (e.g., circuitry), as programmable circuitry appropriatelyprogrammed with software and/or firmware, or as a combination ofspecial-purpose and programmable circuitry. Hence, embodiments mayinclude a machine-readable medium having stored thereon instructionswhich may be used to program a computer (or other electronic devices) toperform a process. The machine-readable medium may include, but is notlimited to, floppy diskettes, optical disks, compact disc read-onlymemories (CD-ROMs), magneto-optical disks, ROMs, random access memories(RAMs), erasable programmable read-only memories (EPROMs), electricallyerasable programmable read-only memories (EEPROMs), magnetic or opticalcards, flash memory, or other type of media/machine-readable mediumsuitable for storing electronic instructions.

The phrases “in some embodiments,” “according to some embodiments,” “inthe embodiments shown,” “in other embodiments,” and the like generallymean the particular feature, structure, or characteristic following thephrase is included in at least one implementation of the presenttechnology, and may be included in more than one implementation. Inaddition, such phrases do not necessarily refer to the same embodimentsor different embodiments.

FIG. 1 illustrates an example of an integrated environment in which someembodiments of the present technology may be utilized. In accordancewith barrios embodiments, integrated environment 100 can provide acustomized portal experience using a cloud-based data-center. Theintegrated environment 100 can provide a customized user experiencebased on readily access information from any domain, including liveoperations data flowing from manufacturing sites, historical businessdata, and repair and maintenance data, to name just a few.

As illustrated in FIG. 1, integrated environment 100 may include one ormore computing devices 110A-110N (such as a mobile phone, tabletcomputer, mobile media device, mobile gaming device, vehicle-basedcomputer, wearable computing device, etc.) and voice interfaces115A-15B, The computing devices 110A-110N and voice interfaces 115A-15Bcan connect (e.g., via device application API 120) with applications andtools 125 and virtual assistants 130 which can connect (e.g., viaapp-engine API 135) to compute engine 140. An intermediate layerinvolves the applications and tools 125 and can include virtualassistants, powered by natural language processing capabilities, insupport of user interactions with their applications and tools. Theapplications and tools 125 can interface with the compute engine 140 totake advantage of its machine learning and artificial intelligencecapabilities.

At the user experience layer, customers and partners can interface witha portal in the usual ways, e.g. in the context of web browsers andapplication interfaces, but also via new types of devices, such as smartspeakers, wearable devices, augmented reality devices, and the like.Integrated security capabilities will span all layers, reaching from theuser experience layer, up through the applications and tools, to thecompute engine 140.

Computing devices 110A-110N can include network communication componentsthat enable the mobile devices to communicate with remote servers (e.g.,hosting the applications and tools 125, virtual assistances 130, etc.)or other portable electronic devices by transmitting and receivingwireless signals using licensed, semi-licensed or unlicensed spectrumover a communications network. In some cases, communication network maybe comprised of multiple networks, even multiple heterogeneous networks,such as one or more border networks, voice networks, broadband networks,service provider networks, Internet Service Provider (ISP) networks,and/or Public Switched Telephone Networks (PSTNs), interconnected viagateways operable to facilitate communications between and among thevarious networks. The communications network can also includethird-party communications networks such as a Global System for Mobile(GSM) mobile communications network, a code/time division multipleaccess (CDMA/TDMA) mobile communications network, a 3rd or 4thgeneration (3G/4G) mobile communications network (e.g., General PacketRadio Service (GPRS/EGPRS)), Enhanced Data rates for GSM Evolution(EDGE), Universal Mobile Telecommunications System (UMTS), or Long TermEvolution (LTE) network), or other communications network.

Applications and tools 125 can include software that is useful forcreating, building, and managing industrial automation systems. Forexample, as illustrated in FIG. 1, applications and tools 125 caninclude a studio suite 126, a bill of material builder 127, and a repairmanager 128. Other embodiments may include different and/or additionalapplications such as but not limited to inventory management tools, userexperience tools, and the like. Applications and tools 125 and virtualassistants 130 can be used by customers and partners to developprojects, put together bids, and otherwise interact with the productlife cycle. In some embodiments, applications and tools 125 can utilizea specialized API 135 for interfacing with the compute engine. API 135can enable the applications and tools 125 to call into the resources ofthe compute engine 140, including its machine learning, artificialintelligence, and natural language processing capabilities.

The machine learning and/or artificial intelligence can be used toimprove the user experience. For example, the end-to-end user experiencein some embodiments will allow for various personalization layers thatdiffer based on who a person is, their role within an organization,their team, and other factors. As a user engages with the applicationsand tools 125, virtual assistants 130, web portal, and/or otherchannels, the user's experience can be customized based on thesefactors. Different work flows, different data streams, and/or differentfeatures and functionality can be exposed to the user based on theirprofile and interactions.

In accordance with various embodiments, compute engine 140 supplementsthe personalized user experience by surfacing recommendations to endusers in the context of their work flow. In some embodiments, computeengine 140 can recommend product configurations, projectrecommendations, build of material recommendations, and bidrecommendations. Compute engine 140 may also be configured to accesspast histories of builds, configurations, and purchases across aspectrum of users and deployments to optimize a user's project for itscurrent context.

In some embodiments, compute engine 140, in conjunction withapplications and tools 125, can accelerate the project developmentprocess for end users. Compute engine 140 can pre-select components fora project based on an analysis of past projects by a specific user andprojects developed by other users. A project accelerator (not shown) canintegrate with recommendation engine 140 to surface recommendedcomponents for a project. In addition, a given project can be optimizedbased on what is most important to the user (or user's company), such astime to delivery, cost, component availability, or performanceconsiderations. Compute engine 140 can use a project optimizerintegrated with an accelerator to assist a user in the projectdevelopment phase. The optimizer within compute engine 140 also accesseshistorical data sets 145 from a wide range of contexts to arrive at anoptimal project design for a given context. In addition, repair andmaintenance records 150, operational data 155 from customer sites 160,and the like can also be used by recommendation engine 140 to createcustomized user experiences and recommendations.

In some embodiments, compute engine 140 may also base recommendation onthe current install base of a company. However, given the lifespan andcomplexity of many industrial automation projects, a company may nothave a clear picture of the actual current configuration of theirinstall base. As such, some embodiments can provide an install baseevaluator to identify goods and services sold to a company. In someembodiments, the install base evaluator can use data that collected fromhistorical invoices or manual evaluation with identified part numbers.The compute engine may also provide an automated analysis (e.g., usingmachine learning or artificial intelligence) to identify configurationsand components using video, pictures, historical data, directcommunications with the industrial automation project, maintenancerecords, and/or other available data. As such, compute engine can helpidentify exactly what is on the company's floors.

Compute engine 140 may also interact with product information management(PIM) systems (not illustrated in FIG. 1). The product informationmanagement system can provide detailed information about parts andcomponents. This information can include sizes, electrical requirements,restrictions, and the like. In addition, the PIM system may also provideindicators as to the lifecycle status of a component. As such computeengine 140 can make decisions or recommendation based not only onphysical or electrical characteristics but also on component lifecycleand availability data (e.g., whether a component is scheduled to bephased out of production, is currently out of production, or may needreplacement).

The install base evaluator and PIM systems allow the platform to gatherdata that can be used to develop and support a strategic maintenanceplan by collecting production specific data on site, processing andanalyzing the data, and delivering detailed reports and recommendationsto users. As such, compute engine can create, maintain, and accesscustom built data collections to gather detailed plant assetinformation, create topological descriptions, create hierarchicaldescriptions specific to the facility by mapping assets to productionpriorities and using terminology and asset descriptions useful to theclient. In addition, other information such as spare part data,environmental conditions of the facility, number of operating hours perprocess may also be used by compute engine 140. For example, in someembodiments, compute engine 140 may use a mean time to failure and thevariable operating hours by production process to develop recommendedinventory investment levels and reports that can be sorted by highestrisk. The customized inventory analysis can give companies an overviewof their current installed base and store room inventory. For example,some embodiments may provide an indication of active spares to supportinstall base, excess active spares that are more than needed, andinactive spares which are not part of the current installed base. As aresult, compute engine 140 can help optimize inventory levels, lowerinventory costs, reducing downtime, and/or improve a facility'smaintenance plan.

FIG. 2 illustrates data flow between various components of an integratedplatform that may be used in one or more embodiments of the presenttechnology. As illustrated in FIG. 2, a user can access user environment210 to access one or more applications or tools for managing aparticular lifecycle phase of a product. The user can have differentroles which can be used for personalization of user environment 210,recommendations, data access, and the like. These roles may beindividualized roles, industry roles, organizational or company roles(e.g., job, location, etc.), phase-based roles (e.g., presale roles, orpost-sale roles), and the like. For example, in a design phase, adistributor or systems integrator can access a bill of materials (BOM)builder. During a production phase, a maintenance technician can accessa repair management tool. Similarly, during an owner of a piece ofequipment may be able to access their project at any stage during theproject lifecycle using the studio suite.

User environment 210 can make request to integrated platform to runmultiple applications based on a common data file 220. In accordancewith various embodiments, integrated platform 230 can take whatever isspecified in a presale phase (e.g., using the BOM builder) and easilyopen up that information in a corresponding tool to address needs in thepost-sale phase to allow for all device commissioning, programming, andconfiguration without any importing, exporting, or recreation of presalefiles. As such, any layouts or designs can be easily opened up withinthe platform by users with differing roles. Moreover, if in thepost-sale phase, a control engineer decides that a specific aspect ofcontrol system was left out, the control engineer can summon thecapability of the presale phase to expand the system. As a result, thereis a seamless integration (e.g., no user ever has to take additionalsteps to keep in presale records in sync with the post-sale) as projectactivity is represented by the same underlying representation or basiswithin integrated platform 230.

The user environment can request data from integrated platform 230.Integrated platform 230 can make one or more queries to query service toaccess the underlying data file 220 for the project. Data file 220 canbe in a format to optimize the capabilities of the tools andapplications within the user environment. The needs for differentlifecycles (e.g., presale and post-sale) can be holistically addressedby the shared data file. For example, data file 220 can have an XMLbased file structure in some embodiments. Data file 220 can accommodatethe creation of new projects and not require the system to go back andchange the way the consuming applications would work. The underlyingstructure the bid builder would access the data file to generate bid,read and write to data file 220. The other applications can also readand write to the same data file 220. Moreover, meta data within datafile 220 can indicate which data is relevant for a particular projectlifecycle phase.

In some embodiments, as the results are returned from query service 240,the data from data file 220 can be formatted (if needed) by integratedplatform 230 so that the tools and applications within user environment210 can present the data according to the role(s) of the user. As aresult, industrial automation projects can be put through differentprisms, lenses, or frames for the optimal presentation within userenvironment 210. For example, the prisms, lenses, or frames can include,but are not limited to, a lowest cost frame, fastest delivery ofcomponents frame, fastest communication speeds frame, quickest availablesystems as part of a BOM frame, and/or the like.

As another example, a user can log into the integrated platform. Theplatform can pull a user's identity profile and identify their roles.For example, based on their corporate role, the user may be able to seedifferent information (e.g., procurement can see prices while automationengineers can only see component and layout data). As another example,user environment 210 can provide customized lifecycle information aboutnew drivers, provide notifications, and/or other personalization basedon components within a plant of their company. As such, if a companyonly orders particular components (e.g., drives), then only those driveswill be presented to the user.

In some embodiments, the different roles may be assigned to differentusers; administrator that manages the roles. In other embodiments, amachine learning or artificial intelligence system may initially assigna role after analyzing available information and then, over time, updateor customize the role based on activity or inputs from administrators orother sources. For example, over time the user's role may change withinthe company. The artificial intelligence or machine learning engine caningest title data from the company. As additional examples, informationsuch as order history, constructed projects, viewed articles, and otherhistory items from user may be ingested by the artificial intelligenceor machine learning engine to further customize the personalizationand/or roles defined within the platform.

Integrated platform 230 can also analyze the data (e.g., using machinelearning or artificial intelligence) from multiple projects, companies,and roles to generate an enhanced or optimized user experience withinuser environment 210. For example, in a presale phase, integratedplatform can generate initial machine designs based on characteristicsabout the user. In addition, notifications indicative of lifecyclesituations, delivery situations (e.g., parts still available but harderto get), performance considerations (e.g., a new switch to increasebandwidth) and the like may also be automatically surfaced to influencethe user's experience and selection. As another example, the tools andapplications may submit (e.g., periodically or in real-time) systemlayouts for automated review and analysis by integrated platform 230.The validation capability provided by integrated platform 230, in someembodiments, can help the user ensure selected components arecompatible, desirable, and/or most efficient in generate a proposal orquote.

FIG. 3 illustrates a set of components 300 that may be used within anintegrated platform according to one or more embodiments of the presenttechnology. According to the embodiments shown in FIG. 3, integratedplatform can include component database 305, inventory database 310,project database 315, prioritization module 320, role detection module325, company module 330, delivery analyzer 335, cost analyzer 340,availability analyzer 345, performance analyzer 350, project analyzer355, lifecycle phase analyzer 360, recommendation module 365,personalization module or engine 370, and acceleration module 375. Eachof these modules can be embodied as special-purpose hardware (e.g., oneor more ASICS, PLDs, FPGAs, or the like), or as programmable circuitry(e.g., one or more microprocessors, microcontrollers, or the like)appropriately programmed with software and/or firmware, or as acombination of special purpose hardware and programmable circuitry.Other embodiments of the present technology may include some, all, ornone of these modules and components along with other modules,applications, and/or components. Still yet, some embodiments mayincorporate two or more of these modules and components into a singlemodule and/or associate a portion of the functionality of one or more ofthese modules with a different module. For example, in one embodiment,recommendation module 365, personalization module 370, and accelerationmodule 375 can be combined into a single module for presenting anenhanced customized experience to a user.

While not illustrated in FIG. 3, integrated platform can includeprocessors and memory. The memory can be any device, mechanism, orpopulated data structure used for storing information. In accordancewith some embodiments of the present technology, the memory canencompass any type of, but is not limited to, volatile memory,nonvolatile memory and dynamic memory. For example, the memory can berandom access memory, memory storage devices, optical memory devices,media magnetic media, floppy disks, magnetic tapes, hard drives, SDRAM,RDRAM, DDR RAM, erasable programmable read-only memories (EPROMs),electrically erasable programmable read-only memories (EEPROMs), compactdisks, DVDs, and/or the like. In accordance with some embodiments, thememory may include one or more disk drives, flash drives, one or moredatabases, one or more tables, one or more files, local cache memories,processor cache memories, relational databases, flat databases, and/orthe like. In addition, those of ordinary skill in the art willappreciate many additional devices and techniques for storinginformation which can be used as memory.

The memory may be used to store instructions for running one or moreapplications or modules on one or more processor(s). For example, thememory could be used in one or more embodiments to house all or some ofthe instructions needed to execute the functionality of, prioritizationmodule 320, role detection module 325, company module 330, deliveryanalyzer 335, cost analyzer 340, availability analyzer 345, performanceanalyzer 350, project analyzer 355, lifecycle phase analyzer 360,recommendation module 365, personalization module 370, and accelerationmodule 375. Some embodiments may also include an operating system thatprovides a software package that is capable of managing the hardwareresources the integrated platform. The operating system can also providecommon services for software applications running on one or moreprocessor(s).

Prioritization module 320 can identify the priorities the user. This canbe based on a variety of information and/or inferences made over timefrom historical interactions, user role, project lifecycle phase,company preferences, and the like. For example, role detection modulecan identify the current role of a user. In some cases, this may be easyas a user may only have one role such as a presale distributor. However,in other cases this may be more complicated as the user's role maychange overtime for a particular project and/or project lifecycle phase.As such, role detection module 325 can access profile information,project information, and monitor current activity within the integratedplatform by the user. The user's activity may be suggestive of thecurrent role (e.g., based on selection of tool or application, specificinquiries, specific actions or selections, and the like). Company module330 can use data provided by the company to set a profile for thecompany. For example, the company profile may indicate specific safetyor operational standards they would like to comply with, generaldeadlines and timeframes, cost constraints, and the like. As such,prioritization module 320 can use information from each of these toprioritize the presentation (e.g., of components) within a tool orapplication.

In order to create an enhanced or optimized user experience variousinformation may be needed to make information decisions orrecommendations. In some embodiments, delivery analyzer 335 can analyzecurrent inventory, order, presale activity, material shortages,geographical locations, and the like to identify any potential issueswith delivery of components. Cost analyzer 340 can review the project,project goals, project priorities, and the like to analyze the costs ofeach component and generate alternative recommendations. For example, insome embodiments cost analyzer can not only review the immediate costs,but also the lifetime costs to own particular components and componentconfigurations. While some components may be cheaper initially, thelifetime costs of the component may be more expense.

Availability analyzer 345 analyze current inventory, historicalinventory, current orders, presale activity, component lifecycle plans,and the like to identify any potential issues with availability ofcomponents as replacement parts within a desired time horizon. Forexample, a particular switch may be in the process of being phased outof production. Equivalent components may have slightly differentdimensions or ratings. As such, availability analyzer can identify thepotential issue and alert the user. The user may still select thiscomponent, but at least the decision is based on knowledge the componentis being phased out and replacement parts may have different dimensions.

Performance analyzer 350 can analyze the industrial automation designand generate recommendations for improving throughput, reducing failurerates, reducing energy consumption, and/or other performancecharacteristics of the design. Project analyzer 355 can analyze thecompliance with various priorities identified by the prioritizationsystem and generate one or more recommendations. Lifecycle phaseanalyzer 360 can analyze the lifecycle of the industrial automationdesign and generate recommendations for different components to improvethe design.

Recommendation module 365 can take the information from deliveryanalyzer 335, cost analyzer 340, availability analyzer 345, performanceanalyzer 350, project analyzer 355, and/or lifecycle phase analyzer 360to generate a holistic enhanced presentation of information that willallow the user to make informed decisions. Personalization module 370presents the recommendations in an order and/or manner personalized tothe user within each of the applications or tools. In some embodiments,acceleration module 375 can accelerate the initial designs based oncharacteristics about the user and/or project. For example, accelerationmodule can generate an initial design or selection of components basedon lifecycle situations, delivery situations (e.g., parts stillavailable but harder to get), performance considerations (e.g., a newswitch to increase bandwidth) and the like to accelerate the user'sexperience.

FIG. 4 is a flowchart illustrating a set of operations 400 for managinga customized user experience according to one or more embodiments of thepresent technology. As illustrated in FIG. 4, requesting operation 405receives a request from a user to access an application or tool.Identification operation 410 identifies the current role of the user.For example, identification operation 410 can identify roles in thepresale and post-sale lifecycle of the industrial automation project.Once the user's role is identified, access operation 415 accesses across platform data file that can be used in any stage of the projectlifecycle (e.g., from initial quote to build to eventual repairs orupgrades). The cross-platform data file provides a common location forall data about the project. In some embodiments, this may be an XML filewhich meta data identifying data relevant to different lifecycle phasesof the industrial automation project.

Once the data is accessed, formatting operation 425 can select andformat the data according to the current role of the user and the accesstool requesting the information. In some embodiments, formattingoperation may present a high-level summary of relevant information fordecisions or management which can be refined with more detail upon userrequests. Determination operation 430 determines whether the tool orapplication makes any changes to the data file. When determinationoperation 430 determines no changes were made (e.g., to the bill ofmaterials, electrical layout, etc.), then determination operation 430branches to recordation operation 435 where access to the file isrecorded. When determination operation 430 determines that changes weremade to the file (e.g., component updates, different replacement parts,electrical redesign, etc.), then update operation 440 can update thefile for use across all lifecycle inquires and tool requests. Forexample, a change made to a component during a repair will update thebill of material. This can be useful for example, if a user wants toduplicate the industrial automation machine at a different location. Inthis way, the machine remain identical and later design changes areautomatically reflected in an updated bill of materials for the newmachine.

FIG. 5 is a flowchart illustrating a set of operations 500 for operatingfor generating custom recommendations and user experiences within anintegrated platform in accordance with some embodiments of the presenttechnology. During ingestion operation 505, data can be ingested andformatted. The data can include, in accordance with various embodiments,inventory data, historical configuration data, repair data, failuredata, performance data, energy consumption data, and the like.Monitoring operation 510 actively monitors activity within anapplication or tool of the integrated platform. For example, the usermay be selecting a particular part, designing a common subsystem, or thelike. Identification operation 515 can identify the user role, company,and project lifecycle phase. Enhancement operation 520 can useartificial intelligence or machine learning to generate an enhanced userexperience. In accordance with various embodiments, the enhancements caninclude, but are not limited to, presale configurations, recommendationsfor alternate parts (e.g., based on costs, availability, etc.) and thelike. These enhancements can be surfaced within the application or toolusing surfacing operation 525.

FIG. 6 is flowchart illustrating a set of operations 600 forautomatically generating a bill of materials in accordance with one ormore embodiments of the present technology. As illustrated in FIG. 6,building operation 605 launches a bill of material builder.Identification operation 610 can identify project applications andparameters, Review operation 615 takes this information and initiates ahistorical review for similar activity using artificial intelligence ormachine learning. Submission operation 625 submits a data query to aquery service to retrieve the cross-platform file. Any propriety orconfidential data (e.g., identified by metadata) may be removed from theanalysis.

Receiving operation 625 receives the data and generation operation 630generates one or more initial starting designs. These designs can bepresented to the user during presentation operation 635. The user of theapplication or tool is then free to ignore or start with one of thesedesigns. The application or tool may identify a previous design madeentirely from the current user or indicate that the design is a hybriddesign across multiple companies or users.

In many cases, suppliers of industrial automation equipment do not saledirectly to the end consumer. Instead, a complex supply chain of systemintegrator and distributors often sit between the end customer and thesupplier. As such, there are many unique challenges in understandingwhich data should be accessible and used by each person within thesupply chain. For example, different distributors may give differentcustomers varying pricing points. Moreover, given that these differingroles from ultimately different companies are essential for the design,implementation, and maintenance of complex industrial automation designsefficiently linking the data to a user in a secure fashion can bedifficult. For example, the lifecycle of industrial automation projectsmay span many decades. As such, there may be turnover within a companyor distributor and a new employee may need access to information thatoriginated with another employee.

FIG. 7 is a flowchart illustrating a set of operations 700 for userpersonalization in accordance with various embodiments of the presenttechnology. As illustrated in FIG. 7, identification operation 705identifies a user and a user role within an industrial automationproject design lifecycle. In accordance with various embodiments,identification operation 705 can identify the user using a variety ofavailable information. For example, in some embodiments, variousinformation such as e-mail addresses, authorization number, previouscontract number, phone numbers, a set of IP addresses, and other datamay be used to verify that the user is located onsite with a company.

As another example, the integrated platform may assign someone withinthe company to verify employment and rights to access certain data alongwith the user roles and/or allow the roles to be automatically assignedor updated (e.g., via machine learning or artificial intelligence). FIG.8 illustrates an example of an interface 800 that may be used foradministrating user roles within an integrated platform according tosome embodiments of the present technology. FIG. 9 illustrates anexample of an interface 900 for managing user roles within an integratedplatform according to some embodiments of the present technology. One ormore roles may be assigned to the user. In accordance with variousembodiments, the user roles (e.g., company or organizational roles,personalized roles, etc.) may be dynamic and change over time based onupdated information, detected activity, and the like.

Determination operation 710 can determine whether the user is verified(or the level of verification) within the integrated platform. Thisverification level can be used to access data from multiple data sets(e.g., in a cross-platform file). Some of this data may be hosted ormaintained by the company itself. The data which the user has access tocan be used by the artificial intelligence and/or machine learningengines to generate customized personalization. However, whendetermination operation 710 determines that the user is not verified,then determination operation 710 branches to generic operation 715 wheregeneric interfaces are generated based solely on public information.When determination operation 710 determines that the user has beenverified, then determination operation 710 branches to retrievaloperation 720 where user provide data, company profile data, and otherinformation can be identified and retrieved.

Monitoring operation 725 can monitor communications and interactionschannels available to the user. Examples of the channels include, butare not limited to, chat interfaces, voice assistants, web portals,tools, search engines, and the like. At some point during theinteractions the user can submit a request that can be received duringreceiving operation 730. The request may be, for example, a request fora price, part number, user manual, or other information for a specificpart. Generation operation 735 can process the request and generate apersonalized response based on activity detected within the otherinteraction channels. For example, if a customer is researching aspecific drive within a tool available in the integrated platform andthen a request is received via the voice assistant (e.g., “Roxy: What isthe price of a drive?”). Generation operation 735 can take the genericrequest and identify (e.g., based on recent history via other channels,company personalizations, etc.) a specific part (e.g., the recentlyidentified drive) and generate a response to a specific interpretationof the generic questions.

FIG. 10 is a sequence diagram 1000 illustrating an example of the dataflow between various components of an integrated platform according tovarious embodiments of the present technology. As illustrated in FIG.10, a user can log in using user interface 1005. The credentialssupplied by the user can be submitted to integrated platform 1010 forvalidation. Once validated, the user can select a lifecycle tool 1015.Lifecycle tool 1015 can request data from database 1020 which can beused to populate the instantiation of the tool within user interface1005. Lifecyle tool 1015 can request an analysis of the activity withinlifecycle tool 1015 by machine learning engine 1025. The optimizationresults can then be sent back to user interface 1005 whererecommendations or other presentation enhancements can be presented tothe user.

Exemplary Computer System Overview

FIG. 11 illustrates a block diagram of an industrial automationenvironment 1100 in an exemplary implementation is shown. Industrialautomation environment 1100 provides an example of an industrialautomation environment that may be utilized as disclosed herein, butother environments could also be used. Industrial automation environment1100 includes computing system 1105, machine system 1110, industrialcontroller 1115, database system 1120, and application integrationplatform 1125. Machine system 1110 and controller 1115 are incommunication over a communication link, controller 1115 and databasesystem 1120 communicate over a communication link, database system 1120and application integration platform 1125 communicate over acommunication link, and application integration platform 1125 andcomputing system 1105 are in communication over a communication link.Note that there would typically be many more machine systems in mostindustrial automation environments, but the number of machine systemsshown in FIG. 11 have been restricted for clarity.

Industrial automation environment 1100 can be an automobilemanufacturing factory, food processing plant, oil drilling operation,microprocessor fabrication facility, or some other type of industrialenterprise. Machine system 1110 could include a sensor, drive, pump,filter, drill, motor, robot, fabrication machinery, mill, printer, orany other industrial automation equipment, including their associatedcontrol systems. A control system can include, for example, industrialcontroller 1115, which could include automation controllers,programmable logic controllers (PLCs), programmable automationcontrollers (PACs), or any other controllers used in automation controlof machine system 1110. Additionally, machine system 1110 could compriseother industrial equipment, such as a brew kettle in a brewery, areserve of coal or other resources, or any other element that may residein an industrial automation environment 1100.

Machine system 1110 may continually produces operational data over time.The operational data can indicate the current status of machine system1110, such as parameters, pressure, temperature, speed, energy usage,overall equipment effectiveness (OEE), mean time between failure (MTBF),mean time to repair (MTTR), voltage, throughput volumes, times, tanklevels, or any other performance status metrics. Machine system 1110and/or controller 1115 is capable of transferring the operational dataover a communication link to database system 1120, applicationintegration platform 1125, and computing system 1105, typically via acommunication network. Database system 1120 could comprise a disk, tape,integrated circuit, server, or some other memory device. Database system1120 may reside in a single device or may be distributed among multiplememory devices.

Application integration platform 1125 comprises a processing system anda communication transceiver. Application integration platform 1125 mayalso include other components such as a router, server, data storagesystem, and power supply. Application integration platform 1125 providesan example of an application server, although alterative configurationscould be used. Application integration platform 1125 may reside in asingle device or may be distributed across multiple devices. Applicationintegration platform 1125 may be a discrete system or may be integratedwithin other systems—including other systems within industrialautomation environment 1100. In some examples, application integrationplatform 1125 could comprise a FactoryTalk® VantagePoint server systemprovided by Rockwell Automation, Inc.

The communication links over which data is exchanged between machinesystem 1110, industrial controller 1115, database system 1120,application integration platform 1125, and communication interface 1130of computing system 1105 could use metal, air, space, optical fiber suchas glass or plastic, or some other material as the transportmedium—including combinations thereof. The communication links couldcomprise multiple network elements such as routers, gateways,telecommunication switches, servers, processing systems, or othercommunication equipment and systems for providing communication and dataservices. These communication links could use various communicationprotocols, such as TDM, IP, Ethernet, telephony, optical networking,packet networks, wireless mesh networks (WMN), local area networks(LAN), metropolitan area networks (MAN), wide area networks (WAN),hybrid fiber coax (HFC), communication signaling, wireless protocols,communication signaling, peer-to-peer networking over Bluetooth,Bluetooth low energy, Wi-Fi Direct, near field communication (NFC), orsome other communication format, including combinations thereof. Thecommunication links could be direct links or may include intermediatenetworks, systems, or devices.

Computing system 1105 may be representative of any computing apparatus,system, or systems on which the event data saving processes disclosedherein or variations thereof may be suitably implemented. Computingsystem 1105 provides an example of a computing system that could be usedas either a server or a client device in some implementations, althoughsuch devices could have alternative configurations. Examples ofcomputing system 1105 include mobile computing devices, such as cellphones, tablet computers, laptop computers, notebook computers, andgaming devices, as well as any other type of mobile computing devicesand any combination or variation thereof. Examples of computing system1105 also include desktop computers, server computers, and virtualmachines, as well as any other type of computing system, variation, orcombination thereof. In some implementations, computing system 1105could comprise a mobile device capable of operating in a server-likefashion which, among other uses, could be utilized in a wireless meshnetwork.

Computing system 1105 includes processing system 1135, storage system1140, software 1145, communication interface 1130, and user interface1150. Processing system 1135 is operatively coupled with storage system1140, communication interface 1130, and user interface 1150. Processingsystem 1135 loads and executes software 1145 from storage system 1140.Software 1145 includes application 1155 and operating system 1160.Application 1155 may include the personalization operations describedherein in some examples. When executed by computing system 1105 ingeneral, and processing system 1135 in particular, software 1145 directscomputing system 1105 to operate as described herein or variationsthereof. In this example, user interface 1150 includes display system1126, which itself may be part of a touch screen that also accepts userinputs via touches on its surface. Computing system 1105 may optionallyinclude additional devices, features, or functionality not discussedhere for purposes of brevity.

Storage system 1140 may comprise any storage media readable byprocessing system 1135 and capable of storing software. Storage system1140 may include volatile and nonvolatile, removable and non-removablemedia implemented in any method or technology for storage ofinformation, such as computer readable instructions, data structures,program modules, or other data. Storage system 1140 may be implementedas a single storage device but may also be implemented across multiplestorage devices or sub-systems. Storage system 1140 may compriseadditional elements, such as a controller, capable of communicating withprocessing system 1135. Examples of storage media include random accessmemory, read only memory, and flash memory, as well as any combinationor variation thereof, or any other type of storage media. In someimplementations, the storage media may be a non-transitory storagemedia. In some implementations, at least a portion of the storage mediamay be transitory. It should be understood that in no case is thestorage media a propagated signal.

Software stored on or in storage system 1140 may comprise computerprogram instructions, firmware, or some other form of machine-readableprocessing instructions having processes that when executed byprocessing system 1135 direct the processing system 1135 to operate asdescribed herein.

The software may also include user software applications. The softwaremay be implemented as a single application or as multiple applications.In general, the software may, when loaded into processing system 1135and executed, transform processing system 1135 from a general-purposedevice into a special-purpose device customized as described herein.

The functional block diagrams, operational sequences, and flow diagramsprovided in the Figures are representative of exemplary architectures,environments, and methodologies for performing novel aspects of thedisclosure. While, for purposes of simplicity of explanation, themethodologies included herein may be in the form of a functionaldiagram, operational sequence, or flow diagram, and may be described asa series of acts, it is to be understood and appreciated that themethodologies are not limited by the order of acts, as some acts may, inaccordance therewith, occur in a different order and/or concurrentlywith other acts from that shown and described herein. For example, thoseskilled in the art will understand and appreciate that a methodologycould alternatively be represented as a series of interrelated states orevents, such as in a state diagram. Moreover, not all acts illustratedin a methodology may be required for a novel implementation.

The included descriptions and figures depict specific implementations toteach those skilled in the art how to make and use the best mode. Forthe purpose of teaching inventive principles, some conventional aspectshave been simplified or omitted. Those skilled in the art willappreciate variations from these implementations that fall within thescope of the invention. Those skilled in the art will also appreciatethat the features described above can be combined in various ways toform multiple implementations. As a result, the invention is not limitedto the specific implementations described above, but only by the claimsand their equivalents.

CONCLUSION

Unless the context clearly requires otherwise, throughout thedescription and the claims, the words “comprise,” “comprising,” and thelike are to be construed in an inclusive sense, as opposed to anexclusive or exhaustive sense; that is to say, in the sense of“including, but not limited to.” As used herein, the terms “connected,”“coupled,” or any variant thereof means any connection or coupling,either direct or indirect, between two or more elements; the coupling orconnection between the elements can be physical, logical, or acombination thereof. Additionally, the words “herein,” “above,” “below,”and words of similar import, when used in this application, refer tothis application as a whole and not to any particular portions of thisapplication. Where the context permits, words in the above DetailedDescription using the singular or plural number may also include theplural or singular number respectively. The word “or,” in reference to alist of two or more items, covers all of the following interpretationsof the word: any of the items in the list, all of the items in the list,and any combination of the items in the list.

The above Detailed Description of examples of the technology is notintended to be exhaustive or to limit the technology to the precise formdisclosed above. While specific examples for the technology aredescribed above for illustrative purposes, various equivalentmodifications are possible within the scope of the technology, as thoseskilled in the relevant art will recognize. For example, while processesor blocks are presented in a given order, alternative implementationsmay perform routines having steps, or employ systems having blocks, in adifferent order, and some processes or blocks may be deleted, moved,added, subdivided, combined, and/or modified to provide alternative orsubcombinations. Each of these processes or blocks may be implemented ina variety of different ways. Also, while processes or blocks are attimes shown as being performed in series, these processes or blocks mayinstead be performed or implemented in parallel, or may be performed atdifferent times. Further any specific numbers noted herein are onlyexamples: alternative implementations may employ differing values orranges.

The teachings of the technology provided herein can be applied to othersystems, not necessarily the system described above. The elements andacts of the various examples described above can be combined to providefurther implementations of the technology. Some alternativeimplementations of the technology may include not only additionalelements to those implementations noted above, but also may includefewer elements.

These and other changes can be made to the technology in light of theabove Detailed Description. While the above description describescertain examples of the technology, and describes the best modecontemplated, no matter how detailed the above appears in text, thetechnology can be practiced in many ways. Details of the system may varyconsiderably in its specific implementation, while still beingencompassed by the technology disclosed herein. As noted above,particular terminology used when describing certain features or aspectsof the technology should not be taken to imply that the terminology isbeing redefined herein to be restricted to any specific characteristics,features, or aspects of the technology with which that terminology isassociated. In general, the terms used in the following claims shouldnot be construed to limit the technology to the specific examplesdisclosed in the specification, unless the above Detailed Descriptionsection explicitly defines such terms. Accordingly, the actual scope ofthe technology encompasses not only the disclosed examples, but also allequivalent ways of practicing or implementing the technology under theclaims.

To reduce the number of claims, certain aspects of the technology arepresented below in certain claim forms, but the applicant contemplatesthe various aspects of the technology in any number of claim forms. Forexample, while only one aspect of the technology is recited as acomputer-readable medium claim, other aspects may likewise be embodiedas a computer-readable medium claim, or in other forms, such as beingembodied in a means-plus-function claim. Any claims intended to betreated under 35 U.S.C. § 112(f) will begin with the words “means for”,but use of the term “for” in any other context is not intended to invoketreatment under 35 U.S.C. § 112(f). Accordingly, the applicant reservesthe right to pursue additional claims after filing this application topursue such additional claim forms, in either this application or in acontinuing application.

What is claimed is:
 1. An integrated platform for industrial automationprojects, the integrated platform comprising: a processor; one or moretools configured to allow a user to interact with the integratedplatform during lifecycle phases of an industrial automation project; anidentification module, under control of the processor, to identify andvalidate a user and one or more roles of the user within an industrialautomation project design; and a personalization engine, under controlof the processor, to personalize a user experience within the integratedplatform based on the one or more roles of the user.
 2. The integratedplatform of claim 1, wherein the personalization engine monitors one ormore interaction channels within the integrated platform and generatespersonalized responses in a first interaction channel based on activitywithin a second interaction channel.
 3. The integrated platform of claim2, wherein the first interaction channels includes a voice assistant andthe second interaction channel includes the one or more tools.
 4. Theintegrated platform of claim 2, wherein the one or more interactionchannels include a chat window, the one or more tools, a voiceassistant, or a search engine.
 5. The integrated platform of claim 1,wherein the one or more roles of the user include a company roleidentifying a role within an organization, an industry role identifyingindustries the user is associated with, and individual roles identifyingspecific activity of the user.
 6. The integrated platform of claim 1,wherein the one or more roles of the user include a company role and thepersonalization engine personalizes activity within the integratedplatform based on the company role.
 7. The integrated platform of claim5, wherein the company role specifies specific components preferred bythe company and the personalization engine only presents thosecomponents to the user during searches.
 8. The integrated platform ofclaim 1, wherein the one or more roles of the user are generated orupdated based on a review from a machine learning or artificialintelligence engine to automatically assess the role of the user.
 9. Theintegrated platform of claim 7, wherein the machine learning orartificial intelligence engine reviews user activity via one or moreinteraction channels, company human resource data, cross platform filesfrom other users in the same industry, historical sales records, andmaintenance records.
 10. A method for operating an integrated platform,the method comprising: identifying a user and one or more user roles,wherein the one or more user roles include a company role identifying arole within an organization, an industry role identifying industries theuser is associated with, and individual roles identifying specificactivity of the user within the integrated platform; monitoring useractivity within the integrated platform via one or more interactionchannels; and generating a personalized experience within the integratedplatform based on the user activity and the one or more user roles. 11.The method of claim 10, further comprising automatically assigning orupdating the one or more user roles to the user based on an evaluationperformed by a machine learning or artificial intelligence system. 12.The method of claim 11, wherein the generating the personalizedexperience includes using the machine learning or artificialintelligence engine to review the user activity, human resource data ofthe company, cross platform files from other users in the same industry,historical sales records, and maintenance records.
 13. The method ofclaim 10, wherein generating the personalized experience within theintegrated platform includes generating a specific response to a genericrequest received via one of the one or more interaction channels. 14.The method of claim 13, wherein the generic response is received via avirtual voice assistant and the specific response is based on theactivity of the user within one or more tools hosted by the integratedplatform.
 15. The method of claim 14, wherein the one or more toolshosted by the integrated platform include a bill of materials builder togenerate an initial design and quote, a studio suite to allowcustomization of specific components, and a repair manager to processmaintenance requests.
 16. The method of claim 10, wherein the one ormore roles of the user are used to create a customized workflow to orderparts.
 17. A computer-readable medium, excluding transitory signals,storing instructions that when executed by one or more processors causea machine to: identify a user and one or more user roles associated withthe user, wherein the one or more user roles include a company roleidentifying a role within an organization, an industry role identifyingindustries the user is associated with, and individual roles identifyingspecific activity of the user within an integrated platform; monitoruser activity within the integrated platform via one or more interactionchannels; and generate a personalized experience within the integratedplatform based on the user activity and the one or more user roles. 18.The computer-readable medium of claim 17, wherein the instructions whenexecuted by one or more processors further cause the machine toautomatically assign or update the one or more user roles based on anmachine learning or artificial intelligence evaluation.
 19. Thecomputer-readable medium of claim 17, wherein the instructions whenexecuted by one or more processors further cause the machine to generatethe personalized experience within the integrated platform by generatinga specific response in a first interaction channel in response to ageneric request received via a second interaction channel.
 20. Thecomputer-readable medium of claim 17, wherein the generic request isreceived via a virtual voice assistant and the specific response isbased on the activity of a user within one or more tools.